package Lexico;

public class EntradaTS {
    
    private Integer direccion;
    private String tipo;
    private Object objeto;

    public EntradaTS () {
    }

    public EntradaTS(Object o) {
        this.objeto=o;
    }

    public EntradaTS(Object o, Integer direccion) {
        this.objeto = o;
        this.direccion = direccion;
    }

    public EntradaTS(Object o, Integer direccion, String tipo) {
        this.objeto = o;
        this.direccion = direccion;
        this.tipo = tipo;
    }

    @Override
    public String toString(){
        return ": "+ this.tipo+ " = " + this.objeto.toString();
    }

    public int getDireccion () {
        return direccion;
    }

    public void setDireccion (int val) {
        this.direccion = val;
    }

    public Object getObjeto () {
        return objeto;
    }

    public void setObjeto (Object o) {
        this.objeto = o;
    }

    public String getTipo () {
        return tipo;
    }

    public void setTipo (String val) {
        this.tipo = val;
    }

    @Override
    public boolean equals(Object o) {
        if (o == null) {
            return false;
        }
        if (o == this)
			return true;
        if (!(o instanceof EntradaTS)) 
	    	return false;        
        
        if ((o instanceof EntradaTS)){
        	EntradaTS s = (EntradaTS) o;
	    	if (!objeto.equals(s.getObjeto()))
	    		return false;
	    }
        return true;
    }

    @Override
    public int hashCode() {
        int hash = 5;
        hash = 13 * hash + (this.objeto != null ? this.objeto.hashCode() : 0);
        return hash;
    }

    

}

